*** Make flat line projection estimate

cd /disk/agedisk3/medicare.work/poterba-DUA52260/jetson-dua52260/outliers/synth/100pct/
use types_panel.dta, clear  
keep if group == 999

local treatment_period = mofd(mdy(11, 4, 2002))
disp `treatment_period'
	* 514

** Create flatline projection
gen last12 = pmt_amt if `treatment_period' - dt <= 12 & `treatment_period' - dt > 0 
egen flatline = mean(last12)
replace flatline = . if dt < `treatment_period' - 12

** Produce difference in series
gen deterrence = flatline - pmt_amt if dt >= `treatment_period'

** Time discount the difference at 10% 
local r = 1.1^(1/12)

gen deterrence_disc = deterrence*1/(`r'^(dt-`treatment_period'))
replace deterrence_disc = . if dt-`treatment_period' >= 60
count if !mi(deterrence_disc)
assert(r(N)==60)

*** Compute total
log using robustness/flatline/deterrence_flatline.log, replace
preserve
collapse (sum) deterrence_disc
qui summarize deterrence_disc
local deterrence = r(min)
disp `deterrence'
restore
log close

*** Truncate graph at 5 years 
drop if dt  - `treatment_period' >= 60
summarize dt 
local minperiod = r(min)
local maxperiod = r(max)

*** Settlement date: June 29, 2006 
local settlement = mofd(mdy(6,29,2006))
twoway (line pmt_amt dt, lcolor(navy) lwidth(thick)) (line flatline dt, lwidth(thick) lcolor(maroon) lpattern(dash)) (rarea pmt_amt flatline dt if dt>= `treatment_period', color(gs5)), xline(`treatment_period') xline(`settlement', lcolor(black)) legend(order(1 "Outliers" 2 "Flat Line Projection") width(80)) xscale(range(`minperiod' `maxperiod')) xlabel(468 492 `treatment_period' 540 564) xtitle("Month") ytitle("$/Month") graphregion(color(white)) yscale(range(0 700000000)) ylabel(0 "$0" 300000000 "$300 Mil" 600000000 "$600 Mil")
format dt %tmMon_YY


graph save "robustness/flatline/OutliersOverlay_FlatLine.gph", replace


